from pyecharts import options as opts
from pyecharts.charts import Graph


def graph01():
    nodes = [
        {"name": "结点1", "symbolSize": 10},
        {"name": "结点2", "symbolSize": 20},
        {"name": "结点3", "symbolSize": 30},
        {"name": "结点4", "symbolSize": 40},
        {"name": "结点5", "symbolSize": 50},
        {"name": "结点6", "symbolSize": 40},
        {"name": "结点7", "symbolSize": 30},
        {"name": "结点8", "symbolSize": 20},
    ]
    links = []
    # 建立节点之间的关系 列表字典型
    for i in nodes:
        for j in nodes:
            links.append({"source": i.get("name"), "target": j.get("name")})    
    #print(links)    
    graph = Graph()
    graph.add("", nodes, links, repulsion=8000)
    graph.set_global_opts(title_opts=opts.TitleOpts(title="Graph-基本示例"))
    graph.render(path=r"./Exercise/2021-01-23/graph_base.html")


graph01()
